package chapter10.static_;
/***
 * 根据JDK版本的不同，静态变量(类变量)的存放位置不同，存放的位置称为静态域(每一个类都有一个)。
 * static 变量，在类加载的时候就生成了。
 * 1.jdk8以前存放在方法区中
 * 2.jdk8以后存放在堆中，class对象
 * */
public class ChildGame {
    public static void main(String[] args) {
        Child child = new Child("ll");
        Child child1 = new Child("tt");
        Child child2 = new Child("xx");
        child.join();
        child1.join();
        child2.join();
        //类变量可以通过类名直接访问
        System.out.println("共有"+Child.count);
    }
}
class Child{
    private  String name;
    //定义一个变量count，是一个类变量(静态变量)static静态
    //特点就是会被所有的child所共享
    public static int count = 0;
    public Child(String name){
        this.name = name;
    }
    public void join(){
        System.out.println(name+"加入了游戏");
        count++;
    }

}